Scaling using gain factors for use in data detection

ABSTRACT

Data is estimated from a received vector comprising a plurality of communications. A received wireless signal is converted to a baseband signal, which is sampled to produce a received vector. Channel responses are estimated for the received communications. The noise variance is estimated. The noise variance is scaled by a scaling factor. Samples are processed using the estimated channel responses and the scaled noise variance to produce a spread data vector. The spread data vector is despread to recover the data of the received wireless signal.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 11/175,662, filed Jul. 6, 2005, which is a continuation of U.S. patent application Ser. No. 10/327,299, filed Dec. 20, 2002, which issued on Aug. 9, 2005 as U.S. Pat. No. 6,928,104, which in turn claims priority from U.S. provisional Application No. 60/396,823, filed Jul. 18, 2002, which are incorporated by reference as if fully set forth herein.

BACKGROUND

This invention generally relates to wireless code division multiple access (CDMA) communication systems. In particular, the invention relates to scaling using gain factors during data detection in such systems.

In wireless CDMA communication systems, multiple communications are transmitted over a shared spectrum. The individual communications are distinguished by a code used to transmit each communication. In frequency division duplex (FDD) CDMA systems, uplink and downlink communications are separated by frequency spectrum. In time division duplex (TDD) CDMA or time division synchronous code division multiple access (TD-SCDMA) systems, uplink and downlink communications are separated by time.

One approach to receive communications in such systems is referred to as single user detection (SUD). In general, SUD is typically performed in a two part process. First, the received signal is equalized to compensate for the response of the wireless channel. Second, the equalized signal is despread using the codes of the user or users. SUD is typically utilized when all communications experience a same channel response. The preferred uses for the SUD is in the downlink and in the uplink when a single user monopolizes a frequency spectrum (in FDD) or time slot (in TDD or TD-SCDMA). Another approach to receive communications in such systems is referred to as multi-user detection (MUD). In MUD, the data from all users' data is estimated simultaneously.

In such systems, the individual communications, transmitted simultaneously, may have varying transmission power levels. To illustrate, in the uplink, a single User Equipment (UE) may transmit multiple coded composite transport channels (CCTrCHs). Each CCTrCH may have a differing quality of service (QOS), requiring a different transmit power level to reach the required QOS. In the downlink, each UE in addition to each individual UE's CCTrCH may require a differing transmission power level.

Due to the varying power levels between communications, the orthogonality between the received codes is degraded, reducing the performance of the data detection. Accordingly, it is desirable to have alternate approaches to data detection.

SUMMARY

Data is estimated from a received vector comprising a plurality of communications. A received wireless signal is converted to a baseband signal, which is sampled to produce a received vector. Channel responses are estimated for the received communications. The noise variance is estimated. The noise variance is scaled by a scaling factor. Samples are processed using the estimated channel responses and the scaled noise variance to produce a spread data vector. The spread data vector is despread to recover the data of the received wireless signal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a simplified diagram of a transmitter and a receiver using gain factor scaling for the uplink.

FIG. 1B is a simplified diagram of a transmitter and a receiver using gain factor scaling for the downlink.

FIG. 1C is a simplified diagram of channel response matrix scaling.

FIG. 2 is a flow chart for applying selective code power scaling.

FIG. 3 is a flow chart for applying total power scaling.

FIG. 4 is a flow chart for iterative selective code power scaling.

FIG. 5A is a simplified block diagram of a multiuser detection receiver using a scaled noise variance.

FIG. 5B is a simplified block diagram of a multiuser detection receiver using a scaled channel response matrix.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1A, for the uplink, and 1B, for the downlink, are simplified diagrams of a transmitter and a receiver using gain factor scaling in a UE and base station. In FIG. 1A at the UE 20, data is spread by a modulation and spreading device 24 using the appropriate codes and modulated, such as by using quadrature phase shift keying (QPSK), M-ary quadrature amplitude modulation (QAM) or other modulation scheme. The spread signal is modulated to radio frequency by a modulation device 26 and radiated by an antenna 28 or antenna array.

After passing through the wireless air interface 30, an antenna 32 or antenna array at the base station 22 receives the communications. The received communications are converted to a baseband signal, such as by a demodulation device 34. A sampling device 36 samples the baseband signal, such as at the chip rate or a multiple of the chip rate, to produce a received vector r. A channel estimation device 38 estimates the channel responses for the received communications, as a channel response matrix H. All of the H matrixes in the following equations are presumed to be normalized. The channel estimation is typically performed using a reference signal, such as the midambles of communication bursts or a pilot code. The channel estimation device 38 also preferably estimates a variance of the noise σ², although the estimated noise variance may be derived from other sources. The noise variance σ² is scaled by a scaling device, such as by a factor of 1/P. Preferred derivations for the value of P are explained in detail later. Although the preferred embodiment scales the noise variance σ², the channel response matrix H may be scaled by a scaling device 61 instead of the noise variance, producing H′, as shown in FIG. 1C. One approach to derive H′ is to multiply H by the square root of P, H′=H·√{square root over (P)}. For such an H′, H′^(H)H′ equals PH^(H)H.

A channel equalizer 42 uses the channel response matrix H and the scaled noise variance σ²/P to produce a spread data vector s. Preferably, the spread data vector s is scaled by a scaling device 64, such as by a factor 1/P Λ^(H), although this scaling device 64 may not be used. (·)^(H) is the conjugate transpose operation. When the scaling device 64 is not used, the spread data vector s is passed directly to the despreader 46. Λ^(H) is a diagonal matrix, which preferred derivations are explained in detail later. The despreader 46 despreads the scaled spread data or spread data using the codes C of the communications to recover the data d.

In FIG. 1B at the base station 22, data is spread and modulated by multiple modulation and spreading devices 48 ₁ to 48 _(N) for transmission to one or multiple UEs 20. The spread signals are combined by a combiner 50 and modulated to radio frequency by a modulator 52. The modulated signal is radiated by an antenna 32 or antenna array.

At a UE 20, an antenna 28 or antenna array receives the communications sent through the wireless air interface 30. The received communications are demodulated by a demodulator 54 to baseband. A sampling device 56 samples the baseband signal to produce a received vector r. A channel estimation device 58 estimates the channel response matrix H and the noise variance σ². The noise variance is scaled by a scaling device 60, such as by a factor of 1/P. Alternately, as shown in FIG. 1C, the channel response matrix H can be scaled. A channel equalizer 62 processes the samples using the channel response matrix H and scaled noise variance to produce a spread data vector s. The spread data vector s is scaled by a scaling device 64, such as by a factor 1/P Λ^(H), although scaling device 64 may not be used. When the scaling device 64 is not used, the spread data vector s is passed directly to the despreader 66. The despreader 66 despreads either the scaled or unscaled spread data using the codes C of that UE's communications to recover the data of the UE's communications. Typically, if some of the received communications are for other UEs 20, the codes of those communications are not used to despread the other UEs' data.

Discussion of preferred algorithms for scaling in data detection are explained in conjunction with a preferred wideband CDMA (WCDMA) TDD system, although the invention is applicable to other systems, such as FDD/WCDMA, TD-SCDMA, CDMA 2000 as well as others.

The received vector r can be modeled per Equation 1. r=AΛ+n  Equation 1

A is the normalized symbol response matrix. Λ is the signal amplitude gain matrix and is a diagonal matrix. n is the noise vector.

When K codes are transmitted at the same time (within the same timeslot), A=[A₁, . . . , A_(K)] is the normalized symbol response matrix of the K codes. A is preferably of size K·N_(s)·N_(s) is the number of data symbols in a data field. d=[d₁, . . . , d_(K)] is the data sequence carried by the K codes. Λ is per Equation 2. $\begin{matrix} {\Lambda = \begin{bmatrix} \Lambda_{1} & \quad & \quad & \quad \\ \quad & \Lambda_{2} & \quad & \quad \\ \quad & \quad & ⋰ & \quad \\ \quad & \quad & \quad & \Lambda_{K} \end{bmatrix}} & {{Equation}\quad 2} \end{matrix}$

Each amplitude gain sub-matrix for a k^(th) code of the K codes, Λ_(k), is a diagonal matrix of size of N_(s) with all the diagonals equal to the signal amplitudes, g_(k), of the k^(th) code, per Equation 3. $\begin{matrix} {\Lambda_{k} = \begin{bmatrix} g_{k} & \quad & \quad & 0 \\ \quad & g_{k} & \quad & \quad \\ \quad & \quad & ⋰ & \quad \\ 0 & \quad & \quad & g_{k} \end{bmatrix}} & {{Equation}\quad 3} \end{matrix}$

To estimate data d in joint detection, a minimum mean square error (MMSE) approach per Equation 4 and 5 may be used. {circumflex over (d)}=Λ ⁻¹(A ^(H) A+Λ ⁻²σ² I)⁻¹ A ^(H) r  Equation 4 {circumflex over (d)}=Λ⁻¹ A ^(H)(AA ^(H)+Λ⁻²σ² I)⁻¹ r  Equation 5 {circumflex over (d)} is the estimated data vector. Equation 4 and 5 are interchangeable by the matrix inversion lemma.

When all the communications pass through the same propagation channel H, the symbol response matrix A is per Equation 6. A=[A₁, . . . ,A_(K)]=[HC₁, . . . , HC_(K)]=H[C₁, . . . ,C_(K)]=HC  Equation 6

H is preferably of size Q·N_(s)+W−1 by Q·N_(s) ·N _(s) is the number of data symbols per data block that the data detection is performed. Q is the spreading factor of the communications and W is the length of the delay spread. C is preferably of size Q·N_(s) by K·N_(s).

The received signal for a common channel can be modeled per Equation 7. r=HCΛd+n  Equation 7

Applying a MMSE solution to determine d is per Equation 8. {circumflex over (d)}=Λ ^(H) C ^(H) H ^(H)(HMH ^(H)+σ² I)⁻ r  Equation 8

The matrix M is the code correlation matrix per Equation 9. M=CGC ^(H)  Equation 9

M is preferably of size Q·N_(s). The matrix G is the code power matrix, per Equation 10. $\begin{matrix} {G = {{\Lambda\Lambda}^{H} = \begin{bmatrix} \Lambda_{1}^{2} & \quad & \quad & \quad \\ \quad & \Lambda_{2}^{2} & \quad & \quad \\ \quad & \quad & ⋰ & \quad \\ \quad & \quad & \quad & \Lambda_{K}^{2} \end{bmatrix}}} & {{Equation}\quad 10} \end{matrix}$

The code correlation matrix M is a diagonal dominant matrix with all the diagonals having a same value, such as P. One value for P is the total power of all bursts per Equation 11. $\begin{matrix} {P = {\sum\limits_{k = 1}^{K}g_{k}^{2}}} & {{Equation}\quad 11} \end{matrix}$

In general, P is referred to as the code power scale factor. By ignoring the edge effects of the non-diagonal part of the matrix, an approximation for M, {circumflex over (M)}, is per Equation 12. {circumflex over (M)}=P·I  Equation 12

By substituting Equation 12 into Equation 8, Equation 13 or 14 results. $\begin{matrix} {\quad{\underset{\_}{\overset{\bigwedge}{d}} = {\frac{1}{P}\Lambda^{H}C^{H}{H^{H}\left( {{HH}^{H} + {\frac{\sigma^{2}}{P}I}} \right)}^{- 1}\underset{\_}{r}}}} & {{Equation}\quad 13} \\ {\underset{\_}{\overset{\bigwedge}{d}} = {\frac{1}{P}\Lambda^{H}{C^{H}\left( {{H^{H}H} + {\frac{\sigma^{2}}{P}I}} \right)}^{- 1}H^{H}\underset{\_}{r}}} & {{Equation}\quad 14} \end{matrix}$

Equation 13 and 14 are interchangeable by the matrix inversion lemma.

Equation 14 can be broken down in two stages per Equations 15 and 16. $\begin{matrix} {\quad{\underset{\_}{\overset{\bigwedge}{s}} = {\left( {{H^{H}H} + {\frac{\sigma^{2}}{P}I}} \right)^{- 1}H^{H}\underset{\_}{r}}}} & {{Equation}\quad 15} \\ {\quad{\underset{\_}{\overset{\bigwedge}{d}} = {\frac{1}{P}\Lambda^{H}C^{H}\underset{\_}{\overset{\bigwedge}{s}}}}} & {{Equation}\quad 16} \end{matrix}$

In Equation 15, the channel equalization is performed. Preferably, the scaling in Equation 15 is performed by scaling devices 40, 60. Preferably, to reduce the complexity in solving equation 15 by the channel equalizer 42, 62, an approximate Cholesky or fast Fourier transform based solution is used, although other techniques may be used.

In Equation 16, the despreading is performed. The scaling, 1/PΛ^(H), during or prior to despreading may or may not be performed. Such scaling tends to improve the decoding performance of turbo-encoded signals.

By careful selection of the code power scaling factor, the overall performance of the receiver can be improved. The performance of the receiver can be modeled by Equation 17. ŝ=s+I _(f) +w  Equation 17

If represents the residual interference after equalization due to the incomplete equalization of channel distortion that results in the inter-symbol interference (ISI) and multiple access interference (MAI). ŝ_(est) of Equation 18 represents the impact of I_(f) on the estimated spread data. $\begin{matrix} {{\underset{\_}{\overset{\bigwedge}{s}}}_{est} = {{\underset{\_}{\overset{\bigwedge}{s}} + {\underset{\_}{I}}_{f}} = {\left( {{H^{H}H} + {\frac{\sigma^{2}}{P}I}} \right)^{- 1}H^{H}H\underset{\_}{s}}}} & {{Equation}\quad 18} \end{matrix}$

w represents the noise after equalization and is per Equation 19. $\begin{matrix} {\quad{\underset{\_}{w} = {\left( {{H^{H}H} + {\frac{\sigma^{2}}{P}I}} \right)^{- 1}H^{H}\underset{\_}{n}}}} & {{Equation}\quad 19} \end{matrix}$

The interference I_(f) and noise w cannot be reduced simultaneously. Decreasing one tends to increase the other. For a large P, the residual interference is reduced, but the noise is increased. For a small P, the noise is reduced but at the cost of increased residual interference.

Two preferred embodiments for power scaling, determining P, are total power scaling and selective scaling. In total power scaling, P is determined per Equation 20. $\begin{matrix} {P = {P_{T} = {{K \cdot g_{avg}^{2}} = {\sum\limits_{m,{n = 1}}^{M,N}{K_{m,n}g_{m,n}^{2}}}}}} & {{Equation}\quad 20} \end{matrix}$

M is the number of UEs and N is the number of CCTrCHs per UE. K_(m,n) is the total number of codes in the n^(th) CCTrCH of the m^(th) UE and g_(m,n) is the gain factor for the n^(th) CCTrCH of the m^(th) UE.

Total power scaling tends to optimize performance over all connections equally and not to optimize any connection over the others. To illustrate, the code power matrix G is per Equation 21. $\begin{matrix} {G = \begin{bmatrix} \Lambda_{1,1}^{2} & \quad & \quad & \quad & \quad & \quad & \quad & \quad \\ \quad & ⋰ & \quad & \quad & \quad & \quad & \quad & \quad \\ \quad & \quad & \Lambda_{1,N}^{2} & \quad & \quad & \quad & \quad & \quad \\ \quad & \quad & \quad & ⋰ & \quad & \quad & \quad & \quad \\ \quad & \quad & \quad & \quad & ⋰ & \quad & \quad & \quad \\ \quad & \quad & \quad & \quad & \quad & \Lambda_{M,1}^{2} & \quad & \quad \\ \quad & \quad & \quad & \quad & \quad & \quad & ⋰ & \quad \\ \quad & \quad & \quad & \quad & \quad & \quad & \quad & \Lambda_{M,N}^{2} \end{bmatrix}} & {{Equation}\quad 21} \end{matrix}$

Λ_(m,n) ² is the code power sub-matrix corresponding to the n^(th) CCTrCH of the m^(th) UE. The code power g_(m,n) ² in the matrix G and in G's sub-matrix can be approximated by one single common power in a least square error approach by minimizing Equation 22. $\begin{matrix} {x_{lse} = {\arg\quad{\min\limits_{x}{\sum\limits_{m,n}^{M,N}\left( {x - g_{m,n}^{2}} \right)^{2}}}}} & {{Equation}\quad 22} \end{matrix}$

The solution of least-square-error-power is the average power of all codes per Equation 23. $\begin{matrix} {g_{avg}^{2} = {\frac{1}{K}{\sum\limits_{{m = 1},{n = 1}}^{M,N}{K_{m,n}g_{m,n}^{2}}}}} & {{Equation}\quad 23} \end{matrix}$

K is the total number of codes transmitted in the time period of interest for the system and is per Equation 24. $\begin{matrix} {K = {\sum\limits_{{m = 1},{n = 1}}^{M,N}K_{m,n}}} & {{Equation}\quad 24} \end{matrix}$

The code power scale factor is determined by Equation 25. $\begin{matrix} {P = {{K \cdot g_{avg}^{2}} = {\sum\limits_{m,{n = 1}}^{M,N}{K_{m,n}g_{m,n}^{2}}}}} & {{Equation}\quad 25} \end{matrix}$

g_(avg) ² is the average code power. A measure of the mismatch between code powers Δ_(m,n) is per Equation 26. Δ_(m,n) =|g _(m,n) ² −g _(avg) ²|  Equation 26

As illustrated, total power scaling is optimal over all connections by minimizing the code power mismatch over all connections.

In selective code power scaling, P is determined to optimize a particular UE connection. To optimize a j^(th) UE's connection, Equation 27 is used. P=α _(j) P _(T)  Equation 27

α_(j) is a factor for the j^(th) UE that is based on the interference and noise level. α_(j) should be adaptively adjusted based on the interference and noise level for optimum performance of the data detection. Two preferred equations for deriving α_(j) are per Equations 28 and 29. $\begin{matrix} {\alpha_{j} = {\frac{\frac{K}{K_{j}}{\sum\limits_{i = 1}^{I}{K_{i,j}g_{i,j}^{2}}}}{P_{T}} = {\frac{K}{K_{j}}{\sum\limits_{i = 1}^{I}\quad\alpha_{i,j}}}}} & {{Equation}\quad 28} \\ {\alpha_{j} = {\frac{\frac{1}{K_{j}}{\sum\limits_{i = 1}^{I}{K_{i,j}g_{i,j}^{2}}}}{P_{T}} = {\frac{1}{K_{j}}{\sum\limits_{i = 1}^{I}\quad\alpha_{i,j}}}}} & {{Equation}\quad 29} \end{matrix}$

K_(j) is the total number of codes carried by that j^(th) UE. K_(i,j) is the number of codes for the i^(th) CCTrCH of the j^(th) UE. g_(i,j) is the gain factor for the ith CCTrCH for the j^(th) UE. I is the number of CCTrCHs of the UE.

Selective code power scaling may also be used to optimize a particular CCTrCH of a UE. To optimize the i^(th) CCTrCH of the j^(th) UE, Equation 30 is used. P=α _(i,j) P _(T)  Equation 30

α_(n,i,j) is a factor for the i^(th) CCTrCH of the j^(th) UE.

Selective code power scaling may also be used to optimize a particular code of a particular CCTrCH of a UE. To optimize the n^(th) code of the i^(th) CCTrCH of the j^(th) UE, Equation 31 is used. P=α _(n,i,j) P _(T)  Equation 31

α_(n,i,j) is a factor for the n^(th) code of the i^(th) CCTrCH of the j^(th) UE. Two preferred equations for determining α_(n,i,j) are Equations 32 and 33. $\begin{matrix} {\alpha_{n,i,j} = \frac{{Kg}_{i,j}^{2}}{P_{T}}} & {{Equation}\quad 32} \\ {\alpha_{n,i,j} = \frac{g_{i,j}^{2}}{P_{T}}} & {{Equation}\quad 33} \end{matrix}$

Two special cases of selective code power scaling are maximum code power and minimum code power scaling. In maximum code power scaling, the maximum code power is used for the scaling. Maximum code power scaling is most applicable when the over-scaling of code power degrades less than the under-scaling of code power. In minimum code power scaling, the minimum code power is used for scaling. Minimum code power scaling is most applicable when the under-scaling of code power degrades less than the over-scaling of code power.

FIG. 2 is one flow chart for applying code power scaling. One UE or UE's CCTrCH is selected for optimum performance, Step 70. If SUD is being performed at the UE the selected CCTrCH is typically with the highest required QOS. If SUD is being performed at the base station, the UE of interest may be the furthest UE, to reduce that UE's transmission power level. Alternatively, the UE or UE CCTrCH of interest may be the UE or UE CCTrCH requiring the highest quality of service. For the UE/UE CCTrCH of interest, the gain factor(s) for that UE/CCTrCH is determined, Step 72. The code scaling factor P is determined from the gain factor(s). SUD is performed using the determined P, Step 74. The code scaling factor P is used in the data detection, such as by scaling devices 40, 44, 60, 64, Step 76. As a result, that UE's/UE CCTrCH's performance is optimized.

FIG. 3 is a flow chart for total power scaling. Total power scaling is preferably performed if all the CCTrCHs at a UE or base station require the same QOS. Additionally, total power scaling may be applied to reduce the complexity by eliminating the need to optimize the SUD for a particular UE. The gain factors of all UE codes are determined, Step 78, and the resulting code scaling factor P is determined, Step 80. The SUD is performed using the determined P, Step 82. This approach equally optimizes all codes.

In some cases P is not necessarily determined from the gain factors. For instance, when a common midamble is used in a downlink allocation, the estimated channel response, H′, has the total power information. Accordingly, the total power is embedded in the estimated channel response at the output of the channel estimator, i.e. H′=H·√{square root over (P)}. In this alternative, gain scaling is not required and steps 78 and 80 of FIG. 3 in this situation can be avoided.

FIG. 4 is a flow chart of iterative selective code power scaling. To optimize the performances, each UE or UE CCTrCH can be optimized. Sequentially for each UE/UE CCTrCH, the gain factor(s) are determined and the resulting code scaling factor P is determined, Step 86. Using P, SUD is performed and the data for that UE/UE CCTrCH is estimated, Step 88. The process is repeated until each of the UEs/UE CCTrCHs have been processed or all the UEs/UE CCTrCHs of interest have been processed, Step 90. This approach optimizes overall performance for each UE/UE CCTrCH at the expense of added complexity and delay.

FIGS. 5A and 5B are simplified block diagrams of gain factor scaling used in a multiuser detection receiver. In multiuser detection, data from all codes is detected simultaneously. These approaches to data detection can also experience improved performance by using gain factor scaling.

In FIG. 5A, the received communications are received by an antenna 100 or antenna array. The received communications are demodulated to baseband by a demodulator 102. The baseband signal is sampled by a sampling device 104 to produce a received vector, r. A channel estimation device 106 estimates the channel response as a channel response matrix, H. The noise variance σ² is also determined, such as by the channel estimation device 106 or by another device. The noise variance σ² is scaled by a scaling device 110, such as by a value 1/P. The channel response matrix H and the noise variance σ² as well as the received vector and spreading codes C are input into a multiuser detection device 108. The multiuser detection device 108 produces a data vector d.

In an alternate approach as shown in FIG. 5B, the channel response matrix H is scaled. The received communications are received by an antenna 112 or antenna array. The received communications are demodulated to baseband by a demodulator 114. The baseband signal is sampled by a sampling device 116 to produce a received vector, r. A channel estimation device 118 estimates the channel response as a channel response matrix, H. The noise variance σ² is also determined, such as by the channel estimation device 118 or by another device. For some multiuser detection algorithms, the noise variance σ² is not used. For those algorithms, the noise variance σ² is not detected. The channel response matrix H is scaled by a scaling device 122, such as by a value √{square root over (P)}. The channel response matrix H and the noise variance σ² as well as the received vector r and spreading codes C are input into a multiuser detection device 120. The multiuser detection device 120 produces a data vector d. Preferably, for use with multiuser detectors, P is derived using total power scaling.

Alternately, the gain factor scaling can be performed in conjunction with the multiuser detection. For such gain scaling, the multiuser detection device 108, 120 performs the gain factor scaling. 

1. A circuit for estimating data from a received vector comprising a plurality of communications, the circuit comprising: a channel estimation device for estimating a channel response of the received vector; and a data estimation device for receiving a scaled input, the scaled input scaled by a factor derived from at least one gain factor of the plurality of communications, the data estimation device using the channel response and the received vector to detect data of the plurality of communications.
 2. The circuit of claim 1 wherein the data estimation device comprises a multiuser detection device and the scaled input is a scaled version of the channel response.
 3. The circuit of claim 1 wherein the data estimation device comprises a multiuser detection device and the scaled input is a scaled version of a noise variance.
 4. The circuit of claim 1 wherein the data estimation device comprises a channel equalizer for equalizing the received vector and a despreader to despread the equalized received vector to recover data of the plurality of communications.
 5. The circuit of claim 1 wherein the scaled input is a scaled version of the channel response.
 6. The circuit of claim 1 wherein the scaled input is a scaled version of a noise variance.
 7. The circuit of claim 1 wherein the equalized received vector is scaled by a scaling factor derived from at least one gain factor.
 8. The circuit of claim 1 wherein the at least one gain factor is a gain factor of a communication of interest.
 9. The circuit of claim 1 wherein the scaling factor is derived from gain factors from all of the received communications.
 10. The circuit of claim 1 wherein the scaling factor is derived from gain factors from a coded composite transport channel of interest.
 11. A method for estimating data from a received vector comprising a plurality of communications, the method comprising: converting a received wireless signal to a baseband signal; sampling the baseband signal to produce a received vector; estimating channel responses for the received communications; estimating the noise variance; scaling the noise variance by a scaling factor; processing samples using the estimated channel responses and the scaled noise variances to produce a spread data vector; and despreading the spread data vector to recover the data of the received wireless signal.
 12. The method of claim 11 wherein the scaling factor is derived from at least one gain factor.
 13. The method of claim 12 wherein the at least one gain factor is determined from a selected coded composite transport channel.
 14. The method of claim 11 wherein the processing samples is performed by a channel equalizer.
 15. The method of claim 11 wherein the spread data vector is scaled using a scaling device before the despreading step.
 16. The method of claim 11 wherein the received wireless communication signal is converted to baseband signal using a demodulator.
 17. The method of claim 11 wherein the channel responses are estimated using midambles of the received wireless communication. 